package com.fram.service.api.v1;

import java.util.List;

import com.fram.bean.api.shopcart.response.ShopCartSearchResponse;
import com.fram.bean.api.shopcart.response.ShopCartSettlementResponse;
import com.fram.bean.sys.PageBean;
import com.fram.common.exception.ProAffairException;
import com.fram.common.exception.ProException;
import com.fram.entity.OrderShoppingcart;
import com.github.pagehelper.PageInfo;

/**
 * @作者： 陳曉鬆 @时间： 2020年4月30日 - 上午10:19:12 @description：->
 */
public interface ShopCartService {

	/** 加入购物车 **/
	public void addShopCart(OrderShoppingcart request) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2020年4月30日 上午11:52:07 @版本：V1.0 @description：-> 购物车修改数量
	 */
	public PageInfo<ShopCartSearchResponse> updateShopCartNumber(OrderShoppingcart request) throws ProException;

	/**
	 * @作者：陳曉鬆 @时间：2020年4月30日 上午11:54:53 @版本：V1.0 @description：-> 删除购物车商品数据
	 */
	public void deleteShopCart(List<Long> cartIds) throws ProAffairException;

	/**
	 * @作者：陳曉鬆 @时间：2020年4月30日 下午2:33:23 @版本：V1.0 @description：-> 查询购物车的数据list
	 */
	public PageInfo<ShopCartSearchResponse> searchShopCartList(PageBean<Long> request, Long userId) throws ProException;

	/**
	 * @作者：陳曉鬆 @时间：2020年4月30日 下午4:01:14 @版本：V1.0 @description：-> 购物车结算
	 */
	public ShopCartSettlementResponse shopCartSettlement(List<Long> cartIds, Long userId) throws ProException;

}
